# 第 11 章 连接器与 MCP：工具边界、OAuth 与审批

到本章为止，你的 WorkBuddy 还只能摸到你自己的电脑。连接器（Connector）与 MCP（Model Context Protocol，模型上下文协议）是它伸向外部世界的手：连上网盘它就能取文件，连上文档平台它就能协作编辑，连上数据库它就能查数。

这一章讲外部工具的接入机制。它比插件系统更值得普通用户理解，因为**外部连接意味着数据出域**——你的内容开始流向第三方服务。读完本章，你应能看懂自己的 MCP 配置，理解连接器与普通插件的区别，知道审批机制拦在哪一步，并能评估一次外部连接的数据流向。

## 11.1 两套接入体系

WorkBuddy 的外部工具有两套并行的接入体系，容易混淆，先分清。

**MCP 服务器**：业界标准协议。任何按 MCP 规范实现的服务都能接入，配置在 `~/.workbuddy/mcp.json`。看一眼你自己的：

```
cat ~/.workbuddy/mcp.json
```

本机这份文件里只有一个条目：一个运行在本机地址的知识管理服务。这个文件结构很简单——服务名、地址、传输方式、自定义请求头。标准协议的通用性是它的价值：开发者生态里现成的 MCP 服务器（数据库、搜索引擎、开发工具）都能直接挂上来。更新日志显示这层能力在快速补齐：OAuth 标准授权流程、令牌自动刷新、资源（Resource）读取陆续就位。

**连接器（Connector）**：面向企业服务的预集成市场。`connectors-marketplace/` 目录下是一排即装即用的连接：协作平台、网盘、会议、发票、招聘系统、代码托管……每个连接器是一个打包好的目录，装法与插件同路径（它们就住在插件市场体系旁边）。与 MCP 的区别不在协议——连接器底层同样走工具调用——而在**信任模型**：MCP 是你自己选服务、自己担责任；连接器是市场背书的预集成，安装即用，权限边界由产品统一定义。官方给连接器配了专门的运行时（更新日志有「Python 类连接器运行时」条目），说明这不是简单的 URL 配置，是有执行环境的能力包。

## 11.2 数据流向：连上之前想清楚

外部连接的核心问题只有一个：数据往哪流。分三段看。

**第一段：配置与凭证。** 接入外部服务需要凭证——OAuth 令牌或 API 密钥。它们存在本地配置里（与第 12 章讲的明文问题同源）。本机配置文件里能看到通道令牌、会话标识以明文形式躺着的实例，这不是 MCP 独有，是桌面软件的通病，但你要知道它在那儿。

**第二段：任务数据出域。** 连上网盘后，「帮我把这个文件夹整理一下」意味着文件清单（可能还有内容）会进入第三方服务的调用链。模型决定调用什么参数，你的数据就按那个参数走。**接入越多外部服务，单次对话的数据流向越复杂**——这是连接器的便利税。

**第三段：模型端点。** 别忘了第 1 章的链条：所有对话先发给模型服务方。如果你配置了第三方模型端点（社区上不少人这么干，接自己的模型订阅），那么全部对话内容——包括刚连上的外部服务数据——流向就再转一道弯。三段叠加，是第 12 章数据流图的基础。

## 11.3 审批：拦在哪一步

外部工具的调用不是全放行的。本机配置里有专门的 MCP 审批状态文件（`mcp-approvals.json`），配合第 12 章的权限模式工作。行为层观察到两层拦截：

第一层在**工具粒度**：新挂的 MCP 服务，其工具首次被调用时会请求授权——你在界面上见过的「允许使用此工具吗」。授权状态落盘到审批文件，下次免问。这层的设计意图是防止模型静默调用你没听说过的工具。

第二层在**操作粒度**：与本地操作同样的风险分类（写敏感位置、删除、执行脚本、网络访问）适用。外部工具的操作同样按风险分级确认——官方权限文档的四类确认操作不分内外。

实践建议：授权审批时看三样——工具名说明它能做什么、参数里数据去哪、这次会话是否真的需要。养成「首次调用必看参数」的习惯，外部连接的风险面就控制住了大半。

## 11.4 实战：接入第一个 MCP

给想动手的读者一个最小接入。以社区常见的公开 MCP 服务为例（具体服务自选，以下是你自己的决策）：在 `mcp.json` 的 `mcpServers` 下加一个条目——名称、服务地址、传输方式照该服务的文档填，保存后重启 WorkBuddy。验证接入：问它「你现在有哪些新工具」，或在会话记录里看工具列表（第 10 章的 grep 方法）。不想要了删掉条目即可，可逆。

两个注意：优先选支持 OAuth 的服务（令牌托管比重放密钥安全）；第三方自建 MCP 服务等于把对话内容交给对方服务器，接入前按第 8 章供应链三问过一遍。

## 11.5 边界

本章边界：连接器市场的具体清单为 5.3.13 本机快照，市场内容随时间变化；「连接器带 Python 运行时」来自更新日志条目，内部实现未解剖；审批状态文件的具体 schema 未做全量解析，本章按行为层描述；MCP 协议本身的规范细节（传输方式、资源模型）超出本书范围，只讲 WorkBuddy 侧的接入形态。

下一章把散落各章的安全线索收拢成完整的风险地图：注入面、明文凭证、沙箱、供应链——以及一份上手就能用的安全清单。
